package com.ruoyi.system.mapper;

import com.ruoyi.system.domain.PracticeCadetAttendance;
import com.ruoyi.system.domain.PracticeCadetAttendanceReport;

import java.util.List;

/**
 * 实践考勤Mapper接口
 *
 * @author dp
 * @date 2023-11-27
 */
public interface PracticeCadetAttendanceMapper {
    /**
     * 查询实践考勤
     *
     * @param attendanceId 实践考勤主键
     * @return 实践考勤
     */
    public PracticeCadetAttendance selectPracticeCadetAttendanceByAttendanceId(Long attendanceId);

    /**
     * 查询实践考勤列表
     *
     * @param practiceCadetAttendance 实践考勤
     * @return 实践考勤集合
     */
    public List<PracticeCadetAttendance> selectPracticeCadetAttendanceList(PracticeCadetAttendance practiceCadetAttendance);

    /**
     * 查询实践考勤报表
     *
     * @param practiceCadetAttendance 实践考勤
     * @return 实践考勤集合
     */
    public List<PracticeCadetAttendanceReport> selectPracticeCadetAttendanceReport(PracticeCadetAttendanceReport practiceCadetAttendance);

    /**
     * 新增实践考勤
     *
     * @param practiceCadetAttendance 实践考勤
     * @return 结果
     */
    public int insertPracticeCadetAttendance(PracticeCadetAttendance practiceCadetAttendance);

    /**
     * 修改实践考勤
     *
     * @param practiceCadetAttendance 实践考勤
     * @return 结果
     */
    public int updatePracticeCadetAttendance(PracticeCadetAttendance practiceCadetAttendance);

    /**
     * 删除实践考勤
     *
     * @param attendanceId 实践考勤主键
     * @return 结果
     */
    public int deletePracticeCadetAttendanceByAttendanceId(Long attendanceId);

    /**
     * 批量删除实践考勤
     *
     * @param attendanceIds 需要删除的数据主键集合
     * @return 结果
     */
    public int deletePracticeCadetAttendanceByAttendanceIds(Long[] attendanceIds);
}
